package rohyunji;

import java.util.ArrayList;
import java.util.List;

public class J04_Collection {

	/**
	콜렉션 collection
	객체지향 기반 프로그램 작성시 종종 같은 종류의 객체를 묶음 group이나 다른 종류의 객체묶음을 함께 쓰는 때가 있음
	
	앞서 배운 배열은 같은 종류의 객체묶음이지만 유연성이 부족하고 크기조정도 안되고 다른종류의 객체도 가질수 없음
	다행히 자바에서는 이런 종류의 객체를 쉽게 다룰수 있는 인터페이스와 클래스를 제공
	그것은 바로 collection 프레임워크임 대부분 java.util 패키지에 포진해 있음 
	
	collection은 다른 객체들의 묶음의 의미  또 다른말로 용기container라고도 하는데 각 요소를 저장,검색,조작하는 메서드 제공
	
	collection<- Set,List Queue
	List:ArrayList,Vector	(동적배열)
	Map: AbstractMap,SortedMap (검색빠르게)
	AbstractMap : HashMap
	Iterator(조회,조작,for보다 더 세련됨 ),Comparator 
	
	이들 대부분은 java.util 패키지에 포함됨
	
	List(동적배열)
	collection의 가장 인기있는 하위 인터페이스임 
	ArrayList는 List의 가장 자주 사용하는 구현클래스
	List는 자료를 순서대로 저장하는(FIFO) 특성을가짐,또한 데이터의 중복으로 저장가능 add메서드를 통해 데이터를 List의 맨끝에 추가
	단 Set은 중복허용 불가 
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		List a=new ArrayList();
		a.add(123456);
		a.add('수');
		a.add(123.456);
		a.add(new J02_Departments());
		a.add("수");
		System.out.println(a);
		

	}

}
